其他
PyTorch VS TensorFlow谁最强?这是标星15000+ Transformers库的运行结果
结果
测量推理
在 CPU 上,使用 GCP n1-standard-32,它有 32 个 vCPU 和 120GB 的内存。CPU 的型号是 Intel Xeon@2.3GHz:
在 GPU 上,使用了带有 12 个 vCPU、40GB 内存和一个 V100 的 GPU(16GB 的 VRAM)的定制 GCP 机器;
实验细节和最佳实践
上述测量使用的 Intel Xeon CPU 带有 AVX 和 AVX2 的扩展,而 TensorFlow 需要从源代码编译之后才能够利用这些扩展,所以只能这么做;
我们通过使用 tf.function 和预先跟踪模型来确保我们没有使用 TensorFlow 的 eager 模式;
我们比较了依赖于库和不依赖于库的工具:PyTorch的 TorchScript 和带有 GPU 的TensorFlow 的 XLA(自动聚类),后面会详细介绍这两个工具;
我们使用了原生的 Python 模块 timeit 来测量推断时间。另外,用repeat=30 和 number=3 来进行每个实验。然后求出30 个值的平均数,就会得到所期望的平均推理时间。通常超过30 个值就会获得非常稳定的结果了;
我们不会使用如 TFX 这样的生产环境,并且我们使用的测量模型的可调用方法是:PyTorch 的nn.module.forward 和 TensorFlow 的 tf.keras.layers.layer.call;
对于 TensorFlow 和 PyTorch,我们会很谨慎地使用适当的 CUDA 版本;
讨论
PyTorch 和 TensorFlow
所有的模型中,在 CPU 上,PyTorch 的平均推断时间为 0.748s,而 TensorFlow 的平均推断时间为 0.823s;
所有模型中,在 GPU 上,PyTorch 的平均推断时间为 0.046s,而 TensorFlow 的平均推断时间为 0.043s;
TorchScript
XLA
模型及其精炼版本
贡献
如何做贡献
基准测试脚本
(*本文为 AI科技大本营编译文章,请微信联系 1092722531)
◆
精彩推荐
◆
2019 中国大数据技术大会(BDTC)再度来袭!豪华主席阵容及百位技术专家齐聚,15 场精选专题技术和行业论坛,超强干货+技术剖析+行业实践立体解读,深入解析热门技术在行业中的实践落地。
即日起,限量 5 折票开售,数量有限,扫码购买,先到先得!
推荐阅读
如何准备算法工程师面试,斩获一线互联网公司机器学习岗offer?
网络运行时间提高100倍,Google使用的AI视频理解架构有多强?
阿里乌镇大动作:平头哥开源 MCU 设计平台
为什么全栈开发对物联网至关重要?
刨根问底 | 红遍全网的SD-WAN,到底是什么?
布隆过滤器、同态加密、PKI体系……一文告诉你密码学在区块链中能做什么
爬虫究竟是合法的还是违法的
100 美元一行代码,开源软件到底咋赚钱?
你点的每个“在看”,我都认真当成了AI